package cate.game.role;

import cp.solution.business.stat.role.RoleRecordEntity;

import java.util.Date;

public class RoleRecordWriter {

    public static RoleRecordEntity create(Role role) {
        RoleRecordEntity r = new RoleRecordEntity();
        r.setAccountId(role.getBase().accountId);
        r.setId(role.getUid());
        r.setOpenId(role.getBase().openId);
        r.setName(role.getBase().name);
        r.setSrvId(role.getBase().srvId);
        r.setSrvIdOrigin(role.getBase().srvIdOrigin);
        r.setGameId(role.getBase().gameId);
        r.setChannelCode(role.getBase().channelCode);
        r.setGroupCode(role.getGame().config.gs.getGroupCode());
        r.setCreateTime(new Date(role.getStatus().createTime));
        r.setActiveTime(new Date(role.getStatus().activeTime));
        r.setLevel(role.getBase().level);
        r.setGrade(role.getBase().grade);
        r.setVip(role.getBase().vip);
        r.setPower(role.getBase().power);
        r.setHeroNum(role.getBag().hero.getList().size());
        r.setHeroMaxLevel(-1);
        r.setM0(role.getBag().numRes.count(0));
        r.setM1(role.getBag().numRes.count(1));
        r.setM2(role.getBag().numRes.count(2));
        r.setM3(role.getBag().numRes.count(3));
        r.setM4(role.getBag().numRes.count(4));
        r.setM5(role.getBag().numRes.count(5));
        r.setM6(role.getBag().numRes.count(6));
        r.setM7(role.getBag().numRes.count(7));
        r.setM8(role.getBag().numRes.count(8));
        r.setM9(role.getBag().numRes.count(9));
        r.setM10(role.getBag().numRes.count(10));
        r.setM14(role.getBag().numRes.count(14));
        r.setM15(role.getBag().numRes.count(15));
        r.setM16(role.getBase().vipPoint);
        r.setM17(role.getBag().numRes.count(17));
        r.setM18(role.getBag().numRes.count(18));
        r.setM19(role.getBag().numRes.count(19));
        r.setM20(role.getBag().numRes.count(20));
        r.setM21(role.getBag().numRes.count(21));
        r.setM22(role.getBag().numRes.count(22));
        r.setM23(role.getBag().numRes.count(23));
        r.setM24(role.getBag().numRes.count(24));
        r.setM25(role.getBag().numRes.count(25));
        r.setM26(role.getBag().numRes.count(26));
        r.setM88(role.getBag().numRes.count(88));
        r.setMainTaskId(role.getTask().mainline.getTaskIndex());
        r.setAdventureId(role.getFarm().adventure.combatIdPassed);
        r.setPayCentsSum(role.getPay().paySum);
        return r;
    }
}
